package com.hzlj.position.locate.service;

import com.fz.common.base.dto.DeleteCommonDTO;
import com.fz.common.base.dto.PageParamDTO;
import com.fz.common.base.dto.QueryPageResultDTO;
import com.hzlj.position.locate.common.model.Position;
import com.hzlj.position.locate.common.dto.abnProhibitAreas.AbnProhibitAreasAddDTO;
import com.hzlj.position.locate.common.dto.abnProhibitAreas.AbnProhibitAreasQueryParamDTO;
import com.hzlj.position.locate.common.dto.abnProhibitAreas.AbnProhibitAreasQueryResultDTO;
import com.hzlj.position.locate.common.dto.abnProhibitAreas.AbnProhibitAreasUpdateDTO;

import java.util.List;

/**
 * 禁止区域(AbnProhibitAreas)表服务接口
 *
 * @author lifh
 * @date 2023-03-28 10:20:33
 */
public interface AbnProhibitAreasService {

    AbnProhibitAreasQueryResultDTO getAbnProhibitAreasById(String id);


    void saveAbnProhibitAreas(AbnProhibitAreasAddDTO dto);


    boolean updateAbnProhibitAreas(AbnProhibitAreasUpdateDTO dto);


    boolean deleteAbnProhibitAreas(DeleteCommonDTO<String> dto);

    void syncPositions(List<Position> positions);

    /**
     * 查询列表：分页
     *
     * @param dto  查询条件
     * @param page 分页信息
     * @return 对象列表
     */
    QueryPageResultDTO<AbnProhibitAreasQueryResultDTO> pageAbnProhibitAreas(AbnProhibitAreasQueryParamDTO dto, PageParamDTO page);
}
